#ifndef _SAX2SCENESTATEHANDLER_H_
#define _SAX2SCENESTATEHANDLER_H_

#pragma once
#include <xercesc\sax2\DefaultHandler.hpp>
#include <xercesc\sax2\Attributes.hpp>
#include <xercesc\util\XMLString.hpp>
#include <sstream>
#include "ui\Scene.h"
#include "ui\SceneObject.h"

using namespace std;

using namespace xercesc;
using namespace ui;

class SAX2SceneStateHandler : public DefaultHandler
{
public:
	SAX2SceneStateHandler(void);
	virtual ~SAX2SceneStateHandler(void);
	void startElement(const XMLCh* const uri, const XMLCh* const localname,
		const XMLCh* const qname, const Attributes& attrs);
	void setScene(Scene*);
private:
	string getSceneAttribute(const string, const Attributes&);
	int toInteger(string);
	bool areEqualStrings(string, string);

	Scene* scene;
};

#endif
